package cn.bonoon.kernel.web.annotations;

import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import cn.bonoon.kernel.filters.InitLoadFilter;

/**
 * <pre>
 * 把过滤器独立出来
 * 
 * 使用该注解有两个参数可以设置：
 * 1. 设置自定义过滤器{@link #value()}
 * 2. 指定是否使用标准过滤器{@link cn.bonoon.kernel.filters.StandardAutoLoadFilter StandardAutoLoadFilter}
 * 
 * 注意：使用本注解默认情况下是不使用“标准过滤器”，如果没有使用本注解，则认为是使用“标准过滤器”的。
 * </pre>
 * @author jackson
 *
 */
@Target({FIELD, TYPE, METHOD})
@Retention(RUNTIME)
public @interface FinderFilter {
	
	Class<? extends InitLoadFilter>[] value() default {};
	
	boolean useDefaultFilter() default false;
}
